package com.qixiaobao.servicefee.mapper;

import com.qixiaobao.servicefee.domain.HandlingFeeStatistic;
import com.qixiaobao.servicefee.domain.HandlingFeeStatisticDetail;
import com.qixiaobao.servicefee.domain.HandlingFeeStatisticLog;
import com.qixiaobao.servicefee.domain.dto.HandlingFeeStatisticDTO;
import com.qixiaobao.servicefee.domain.dto.HandlingFeeStatisticDetailDTO;
import com.qixiaobao.system.domain.dto.CountDTO;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @Description 手续费汇总  数据层
 * @Author yangxm
 * @Date 2025/6/25 16:37
 */
@Mapper
public interface HandlingFeeStatisticMapper {


    /**
     * @Description 当月手续费汇总实时数据
     * @Author yangxm
     * @Date 2025/6/25 16:41
     * @param handlingFeeStatisticDTO
     * @return java.util.List<com.qixiaobao.servicefee.domain.HandlingFeeStatistic>
     */
    List<HandlingFeeStatistic> selectRealTimeHandlingFeeStatisticList(HandlingFeeStatisticDTO handlingFeeStatisticDTO);


    /**
     * @Description 查询非当月手续费汇总数据
     * @Author yangxm
     * @Date 2025/6/25 16:42
     * @param handlingFeeStatisticDTO
     * @return java.util.List<com.qixiaobao.servicefee.domain.HandlingFeeStatistic>
     */
    List<HandlingFeeStatistic> selectHandlingFeeStatisticList(HandlingFeeStatisticDTO handlingFeeStatisticDTO);

    /**
     * @Description 获取手续费明细统计数据
     * @Author yangxm
     * @Date 2025/6/25 16:43
     * @param handlingFeeStatisticDetailDTO
     * @return com.qixiaobao.nondirect.invoice.domain.domain.dto.CountDto
     */
    CountDTO selectCountDto(HandlingFeeStatisticDetailDTO handlingFeeStatisticDetailDTO);

    /**
     * @Description 非当前月份，手续费汇总明细
     * @Author yangxm
     * @Date 2025/6/25 16:54
     * @param handlingFeeStatisticDetailDTO
     * @return com.qixiaobao.servicefee.domain.HandlingFeeStatisticDetail
     */
    HandlingFeeStatisticDetail selectHandlingFeeStatisticDetail(HandlingFeeStatisticDetailDTO handlingFeeStatisticDetailDTO);

    /**
     * @Description 手续费汇总 - 实收明细
     * @Author yangxm
     * @Date 2025/6/25 17:04
     * @param handlingFeeStatisticDetailDTO
     * @return java.util.List<com.qixiaobao.servicefee.domain.HandlingFeeStatisticDetail>
     */
    List<HandlingFeeStatisticDetail> selectReceiptHandlingFeeDetailList(HandlingFeeStatisticDetailDTO handlingFeeStatisticDetailDTO);

    /**
     * @Description 财务实收手续费(改) 操作日志
     * @Author yangxm
     * @Date 2025/6/26 10:42
     * @param handlingFeeStatisticLog
     * @return java.util.List<com.qixiaobao.servicefee.domain.HandlingFeeStatisticLog>
     */
    List<HandlingFeeStatisticLog> selectHandlingFeeStatisticLogList(HandlingFeeStatisticLog handlingFeeStatisticLog);
}
